name_list = ["张三", "里斯", "挖煤"]

# 额外空间, 循环使用 + 拼接
ret = ""
for s in name_list:
    ret += s
print(ret)

# 使用 join()
ret = "".join(name_list)
print(ret)


# 列表生成式, 顾名思义, 可以帮助我们生成列表
# 生成 0~9 的列表
a = [x for x in range(10)]
print(a)

# 生成 1~10
b = [x for x in range(1, 11)]
print(b)

# 生成10以内的奇数, 偶数
c = [x for x in range(1, 11) if x % 2 == 1]
d = [x for x in range(1, 11) if x % 2 == 0]
print(c)
print(d)

# 生成10以内的各数的平方(式子前面也可以变)
e = [x ** 2 for x in range(1, 11)]
print(e)

l = [1,5,7,2]
l.sort()
print(l)
l.sort(reverse=True)
print(l)



if 1 in l:
    print("1 存在") # 输出: 1 存在
if 2 not in l:
    print("2 不存在") # 不输出
if 5 not in l:
    print("5 不存在") # 输出: 5 不存在

l = [1, 2]
l.append(3)
l.append("4")
l.append(True)
l.append([7,8])
print(l) # 输出: [1, 2, 3, '4', True, [7, 8]]

# extend() 把一个可迭代类型数据中的元素 "逐一" 添加到列表中
# append() 是把数据作为整体添加在后面, 比如上述可以看到添加一个列表是呈一个整体添加的
a = [1, 2]
b = [5, 6]
c = "abc"
a.extend(b)
a.extend(c)
print(a) # 输出: [1, 2, 5, 6, 'a', 'b', 'c']

# insert() 在指定位置插入数据
l = [1,2,3,4]
l.insert(2, "a")
print(l) # 输出: [1, 2, 'a', 3, 4]

number_list = [1, 2, 3, 4]

# for-in
for nums in number_list:
    print(nums)

print("-" * 10)
# 循环
i = 0
while i < len(number_list):
    print(number_list[i])
    i += 1